package com.bentley.kotlindemo.repository

import com.bentley.kotlindemo.db.entity.Author
import com.bentley.kotlindemo.db.dao.AuthorDao

/**
 * <pre>
 *  ┌────────────────────────────────────────────
 *  │ @author  Lee  @date 2021/3/24 17:43
 *  ├┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄
 *  │ @desc  仓库层 home页面
 *  └────────────────────────────────────────────
 *
 *  隔离数据层以支持单元测试，提高测试效率。单元测试时，用Mock对象代替实际的数据库存取，可以成倍地提高测试用例运行速度。
将业务逻辑与数据或服务访问逻辑分离来提高代码的可维护性和可读性。
实现并集中数据源的缓存策略。
从许多位置访问数据源，并希望应用集中管理的一致访问规则和逻辑。

 * </pre>
 */
class HomeRepository(private val authorDao: AuthorDao) {
    suspend fun getAllAuthors() {
        authorDao.getPlants()
    }

    suspend fun addAuthor(author: Author) {
        var list = ArrayList<Author>()
        authorDao.insertAll(list)
    }
    
}